home *** CD-ROM | disk | FTP | other *** search
/ Windows News 2010 Summer - Disc 1 / WN_Ete2010_CD1.iso / Onglet5 / Weezo / Weezo setup.exe / {code_appDir} / www / local / displayResource.php < prev    next >
PHP Script  |  2010-05-19  |  2KB  |  72 lines

  1. <?php
  2. /**
  3.  * Open a resource in an application window, without login with an user (so far only used by chat resource)
  4.  *
  5.  * PHP version 5
  6.  *
  7.  * LICENSE: This source file is subject to version 3.0 of the PHP license
  8.  * that is available through the world-wide-web at the following URI:
  9.  * http://www.php.net/license/3_0.txt.  If you did not receive a copy of
  10.  * the PHP License and are unable to obtain it through the web, please
  11.  * send a note to license@php.net so we can mail you a copy immediately.
  12.  *
  13.  * @category   NA
  14.  * @package    NA
  15.  * @author     Nicolas Bruley / Peer 2 World <contact@weezo.net>
  16.  * @copyright  2005-2009 Nicolas Bruley / Peer 2 World
  17.  * @license    http://www.php.net/license/3_0.txt  PHP License 3.0
  18.  * @version    CVS: $Id:$
  19.  * @link       http://www.weezo.net
  20.  * @since      File available since Release 1.0.4
  21.  */
  22.  
  23. // Note: should be removed as UI works with sessions since V2.0
  24.  
  25.  
  26. /**
  27.  * @desc Save session data
  28.  *
  29.  */
  30. function saveDisplayResourceSession(){file_put_contents(cfAppDataDir().'/sessiondata/DisplayResourceSession',serialize($_SESSION));}
  31. // Use dedicated session data so it's not closed by other application-called resources
  32. $_SESSION=(file_exists(cfAppDataDir().'/sessiondata/DisplayResourceSession'))?unserialize(file_get_contents(cfAppDataDir().'/sessiondata/DisplayResourceSession')):array();
  33. register_shutdown_function('saveDisplayResourceSession');
  34.  
  35.  
  36. // Initialize script data
  37. require_once('localFunctions.php');
  38. lfInit();
  39.  
  40. // First load
  41. if(!isset($_SESSION['activeResourceId'])){
  42.  
  43.     echo '<body onload="document.location.href=\''.$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'].'\'"></body>';
  44.     $_SESSION['activeResourceId']=0;
  45.     exit;
  46. }
  47.  
  48.  
  49. if (!isset($_GET['resourceConfigFile']) && !isset($_SESSION['res'][0])) {
  50.     wSession_destroy();    die('no resource configuration file');
  51. }
  52.  
  53.  
  54. // Load resource configuration file
  55. if(!isset($_SESSION['res'][0])){
  56.     $res=new WResConfig($_GET['resourceConfigFile']);
  57.     if(!$res->isValid()) die('Resource '.$_GET['resourceConfigFile'].' not found');
  58.     $_SESSION['res'][0]=$res->getVar();
  59.  
  60.     // Set minimal user data
  61.     cfUSetVar('icon','default.jpg');
  62.     cfUSetVar('id','applicationUser');
  63.     cfUSetVar('administrator',true);
  64. }
  65. else $res=new WResConfig($_SESSION['res'][0]['id']);
  66.  
  67. // Set PHP_SELF on target script
  68. $_SERVER['APPLICATION_PHP_SELF']=$res->definition('resourceScriptPath').'/'.$res->definition('baseFile');
  69.  
  70. // Require resource script
  71. require(cfAppDocRoot().$_SERVER['APPLICATION_PHP_SELF']);
  72. ?>